"use strict";
// 枚举 { Enum }
// 1. 给一组数据分别取上让更好理解的名字
// 2. 一个枚举中只会存在固定范围的值
// 3. 注意点：枚举类型会入侵到运行时的代码，会影响编译后的结果
Object.defineProperty(exports, "__esModule", { value: true });
// 一般情况下
// const PostStatus = {
//   Draft: 0,
//   Unpublished: 1,
//   published: 2
// }
// enum PostStatus {
//   Draft = 0,
//   Unpublished = 1,
//   published = 2
// }
// 枚举类型的值可以不用等号的方式赋值，默认为0，如果第一个值默认为6，后面的值就从6开始累加
var PostStatus;
(function (PostStatus) {
    PostStatus[PostStatus["Draft"] = 6] = "Draft";
    PostStatus[PostStatus["Unpublished"] = 7] = "Unpublished";
    PostStatus[PostStatus["published"] = 8] = "published";
})(PostStatus || (PostStatus = {}));
// 字符串枚举，需要给每个成员初始化赋值
var PostStatus1;
(function (PostStatus1) {
    PostStatus1["Draft"] = "aaa";
    PostStatus1["Unpublished"] = "bbb";
    PostStatus1["published"] = "ccc";
})(PostStatus1 || (PostStatus1 = {}));
var post = {
    title: 'hello typescript',
    status: PostStatus.Draft
};
